/* */

class Mysql {
    constructor(user) {
        this.user=user
        this.mysqli = require('mysql');
        this.connection 
        this.getconnection(this.user)
    }

    getconnection(user) {
        user ? {} : user = {}
        let connection = this.mysqli.createConnection({
            host: user.host ? user.host : 'localhost', //链接地址
            user: user.user ? user.user : 'root', //用户名
            password: user.password ? user.password : '1591232143', //用户密码
            database: user.database ? user.database : 'product' //数据库
        })
        this.connection=connection
    }
    mysql(sql, param) {
        let _this = this
        return new Promise((resolve, reject) => {
            _this.getconnection(_this.user)
            _this.connection.connect();
            _this.connection.query(sql, [param], function (error, results) { //第一个参数是需要执行的sql命令，第二个是执行后的回调函数第一个参数是执行失败的信息，成功为null。第二个参数包含了成功后的返回信息。
                if (error) {
                    console.log('[UPDATE ERROR] - ', error.message);
                    reject(error)
                }
                if (results) {
                    resolve(results)
                }
            });
        })
    }

    clearcon() {
        this.connection.end();
    }
}
module.exports = Mysql




// function test1(){
//     return arr=   mysql1(getConnection({}), {
//         sql: `select * from url where id >5930`,
//     })

// }
// let mysql = new Mysql()
// let sql = 'select * from url'
// mysql.mysql(sql).then(data => {
//     console.log(data);
//     mysql.clearcon()
// }, err => {
//     console.log(err);
// })


